
var prefix = "/sys/user"
$(function() {
    load();
    loadDeptList();//加载科室信息列表，供数据映射使用
});

function load() {
    $('#exampleTable')
        .bootstrapTable(
            {
                method : 'get', // 服务器数据的请求方式 get or post
                url : prefix + "/listByRole", // 服务器数据的加载地址
                //	showRefresh : true,
                //	showToggle : true,
                //	showColumns : true,
                iconSize : 'outline',
                toolbar : '#exampleToolbar',
                striped : true, // 设置为true会有隔行变色效果
                dataType : "json", // 服务器返回的数据类型
                pagination : true, // 设置为true会在底部显示分页条
                // queryParamsType : "limit",
                // //设置为limit则会发送符合RESTFull格式的参数
                singleSelect : false, // 设置为true将禁止多选
                // contentType : "application/x-www-form-urlencoded",
                // //发送到服务器的数据编码类型
                pageSize : 10, // 如果设置了分页，每页数据条数
                pageNumber : 1, // 如果设置了分布，首页页码
                //search : true, // 是否显示搜索框
                showColumns : false, // 是否显示内容下拉框（选择显示的列）
                sidePagination : "server", // 设置在哪里进行分页，可选值为"client" 或者 "server"
                queryParams : function(params) {
                    return {
                        limit: params.limit,
                        offset:params.offset,
                        roleId:60,//医生角色id为60
                        deptId:$('#deptId').val(),
                        name:$('#searchName').val(),
                        // username:$('#searchName').val()
                    };
                },
                columns : [
                    // {
                    //     checkbox : true
                    // },
                    {
                        field : 'userId',
                        title : '序号',
                        align: 'center',
                        formatter: function (value, row, index) {
                            var pageSize = $('#exampleTable').bootstrapTable('getOptions').pageSize;//通过表的#id 可以得到每页多少条
                            var pageNumber = $('#exampleTable').bootstrapTable('getOptions').pageNumber;//通过表的#id 可以得到当前第几页
                            return pageSize * (pageNumber - 1) + index + 1;    //返回每条的序号： 每页条数 * （当前页 - 1 ）+ 序号
                        }
                    },
                    {
                        field : 'username',
                        title : '账号'
                    },
                    {
                        field : 'name',
                        title : '姓名'
                    },
                    {
                        field : 'sex',
                        title : '性别',
                        formatter: function (value, row, index) {
                            if (value == '96') {
                                return '男';
                            } else if (value == '97') {
                                return '女';
                            }else {
                                return '--';
                            }
                        }
                    },
                    {
                        field : 'deptId',
                        title : '部门',
                        formatter: function (value, row, index) {
                            return getDeptNameById(value);
                        }
                    },
                    {
                        field : 'email',
                        title : '邮箱'
                    },
                    {
                        field : 'mobile',
                        title : '手机号'
                    },
                    {
                        field : 'status',
                        title : '状态',//状态 0:禁用，1:正常
                        align: 'center',
                        formatter: function (value, row, index) {
                            if (value == '0') {
                                return '<span class="label label-danger">禁用</span>';
                            } else if (value == '1') {
                                return '<span class="label label-primary">正常</span>';
                            }
                        }
                    },
                    {
                        title : '操作',
                        field : 'id',
                        align : 'center',
                        formatter : function(value, row, index) {
                            var scheduleInformation = '<a class="btn btn-primary btn-sm " href="#" mce_href="#" title="查看排班信息" onclick="viewScheduleInformation(\''
                                + row.userId
                                + '\')"><i class="fa fa-book"></i></a> ';
                            return  scheduleInformation;
                        }
                    } ]
            });
}
function reLoad() {
    $('#exampleTable').bootstrapTable('refresh');
}

//查看排班信息
function viewScheduleInformation(id) {
    layer.open({
        type : 2,
        title : '排班信息',
        maxmin : true,
        shadeClose : false, // 点击遮罩关闭层
        area : [ '800px', '520px' ],
        content : '/yygl/workdayPage/listByDoc?did=' + id // iframe的url
    });
}

var openDept = function(){
    layer.open({
        type:2,
        title:"选择科室",
        area : [ '300px', '450px' ],
        content:"/system/sysDept/treeView"
    })
}
function loadDept( deptId,deptName){
    $("#deptId").val(deptId);
    $("#deptName").val(deptName);
}

/**
 * 获取部门列表（充当缓存作用，如果每行数据都发一次请求就太浪费了）
 * @author qichao
 * @date 2022/4/29
 */
var deptList;
function loadDeptList(){
    $.ajax({
        url : "/system/sysDept/list",
        type : "get",
        async:false,
        success : function(data) {
            deptList = data;
        }
    });
}
function getDeptNameById(id){//根据科室id获取科室名称
    for (let i = 0; i < deptList.length; i++) {
        if(deptList[i].deptId==id){
            return deptList[i].name;
        }
    }
}

/**
 * 查询条件重置
 */
function reSet(){
    $('#deptId').val('');
    $("#deptName").val('');
    $('#searchName').val('');
    $('#exampleTable').bootstrapTable('refresh');
}
